package com.github.od.util;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

import com.github.od.util.jwt.IJWTInfo;
import com.github.od.util.jwt.JWTHelper;

/**
* 服务客户端Token工具类
* 
* @author xieweikun
* @version 2017年11月19日 下午3:11:01
*/
@Configuration
public class ClientTokenUtil {
	
	// 私钥
	@Value("${client.path.pri-key}")
	private String priKeyPath;
	// 公钥
	@Value("${client.path.pub-key}")
	private String pubKeyPath;
	// 过期时间
	@Value("${client.expireTime}")
	private int expireTime;

	/**
	 * 生成的Token
	 * 
	 * @return
	 * @throws Exception
	 */
	public String generateToken(IJWTInfo ijwtInfo) throws Exception {
		return JWTHelper.generateToken(ijwtInfo, priKeyPath, expireTime);
	}

	/**
	 * 封装parserToken方法
	 * @param token
	 * @return
	 * @throws Exception 
	 */
	public IJWTInfo getInfoFromToken(String token) throws Exception {
		return JWTHelper.getInfoFromToken(token, pubKeyPath);
	}

}
